So what does happen if someone chooses to not use Segwit 'keys' and decides to create extremely expensive transactions? Nothing, they still can't create a TX/block that it significantly (or adequately) bigger in order for the 'attack' to work.
if an attacker makes a 1mb bloated non-segwit tx. then the block is filled. again.. the block is filled(repeated for emphasis) and no one else can get their transactions into the block.
doesnt matter what size the block could have been or is.. its filled. end of
thus even if you have X thousand users using segwit.. their transactions are still held up in mempools, unconfirmed.
= segwit is not a remedy. its just taking the guns away from the innocent and dumbly thinking that will solve malicious gun crimes. yet malicious gun crimes are still happening because malicious people still have a gun to hold people up.
segwit doesnt magically make the block 2mb.. its all dependant on what type of transactions are in a block that offsets posible expansion of block capacity of that specific block at that specific time.
if all transactions are native block is at 1mb..
if 50% transactions are native that specific block might be 1.5mb
if 0% transactions are native that specifit block might be 2.1mb
but if a spammer fills a block with native transactions.. segwit users cant do crap