lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Sat, 26 Jan 2013 11:18:01 +0100
From:	Paolo Bonzini <pbonzini@...hat.com>
To:	Tejun Heo <tj@...nel.org>
CC:	linux-kernel@...r.kernel.org, pmatouse@...hat.com,
	"James E.J. Bottomley" <JBottomley@...allels.com>,
	linux-scsi@...nel.org, Jens Axboe <axboe@...nel.dk>
Subject: Re: [PATCH 06/13] sg_io: whitelist a few more commands for multimedia
 devices

Il 26/01/2013 00:47, Tejun Heo ha scritto:
>> > If I make a whitelist with all the commands that Linux sends, I'll have
>> > many new commands in the whitelist and no old commands.  The new
>> > commands didn't exist when old drives were sold, so they are "dangerous"
>> > in your opinion.  At that point I might as well keep the whitelist
>> > empty, no?
> Let's not go to extremes.  It's not about theoretic correctness.

Once you start looking at what is already in the list, you'll see that
your problem is entirely theoretical, and any choice is going to be arbitrary.
There are already plenty of enabled commands that are not implemented by
most SCSI devices (not just cheap USB enclosures), and I don't see what
the difference should be between say "LOG SELECT" and "ORWRITE".

> It's about how to appraoch a possibly messy practical problem. To me,
> it seems natural to be conservative on this and add what's being
> acitvely used, which as a bonus will also give us at least some
> chance of evaluating what we have and why later on if it ever needs
> to be changed.
> 
> I'm just not comfortable with adding a bunch of commands by simply
> scanning the specs.  Let's at least have some backing data and
> justification for exposing new ones.  I really don't think that's too
> much to ask.  Start with minimal set.  Grow it as needed.  We can
> always grow but the other direction is much harder.

Ok, so I looked at the list.  The vast majority of the commands are
added because Linux itself is using them.

Considering only commands that have a "D" (i.e. are supported by
"normal" disks), these maybe can be removed from patch 9.  Probably
no one would notice:

+       sgio_bitmap_set(0x07, D|      W|  O                  , write); // REASSIGN BLOCKS
+       sgio_bitmap_set(0x29, D|      W|R|O                  , read);  // READ GENERATION
+       sgio_bitmap_set(0x2C, D|        R|O                  , write); // ERASE(10)
+       sgio_bitmap_set(0x8B, D                              , write); // ORWRITE

These two are no-ops so I won't cry too much for them:

+       sgio_bitmap_set(0x34, D|      W|  O|        K        , read);  // PRE-FETCH(10)
+       sgio_bitmap_set(0x90, D|      W|  O|      B          , read);  // PRE-FETCH(16)

Everything else has to stay.

For tapes and media changers, all of the commands have to stay.

Paolo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ