Ivan Kokshaysky
884525655d
PCI: clean up resource alignment management
...
Done per Linus' request and suggestions. Linus has explained that
better than I'll be able to explain:
On Thu, Mar 27, 2008 at 10:12:10AM -0700, Linus Torvalds wrote:
> Actually, before we go any further, there might be a less intrusive
> alternative: add just a couple of flags to the resource flags field (we
> still have something like 8 unused bits on 32-bit), and use those to
> implement a generic "resource_alignment()" routine.
>
> Two flags would do it:
>
> - IORESOURCE_SIZEALIGN: size indicates alignment (regular PCI device
> resources)
>
> - IORESOURCE_STARTALIGN: start field is alignment (PCI bus resources
> during probing)
>
> and then the case of both flags zero (or both bits set) would actually be
> "invalid", and we would also clear the IORESOURCE_STARTALIGN flag when we
> actually allocate the resource (so that we don't use the "start" field as
> alignment incorrectly when it no longer indicates alignment).
>
> That wouldn't be totally generic, but it would have the nice property of
> automatically at least add sanity checking for that whole "res->start has
> the odd meaning of 'alignment' during probing" and remove the need for a
> new field, and it would allow us to have a generic "resource_alignment()"
> routine that just gets a resource pointer.
Besides, I removed IORESOURCE_BUS_HAS_VGA flag which was unused for ages.
Signed-off-by: Ivan Kokshaysky <ink@jurassic.park.msu.ru >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Gary Hade <garyhade@us.ibm.com >
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de >
2008-04-20 21:47:08 -07:00
..
2008-02-08 09:22:32 -08:00
2008-02-06 10:41:15 -08:00
2008-02-07 08:42:23 -08:00
2008-04-16 21:09:33 -07:00
2008-02-07 10:30:48 +00:00
2008-04-14 11:15:49 +02:00
2008-04-14 11:15:44 +02:00
2008-04-14 11:15:54 +02:00
2008-02-14 21:17:08 -08:00
2008-03-04 16:35:18 -08:00
2008-04-17 23:56:30 -07:00
2008-02-10 18:11:16 -05:00
2008-03-24 22:26:14 -07:00
2008-02-08 09:22:30 -08:00
2008-02-06 10:41:10 -08:00
2008-02-14 02:43:39 -05:00
2008-04-20 21:47:02 -07:00
2008-02-19 10:04:00 +01:00
2008-03-28 22:14:15 -04:00
2008-02-24 00:27:33 -05:00
2008-03-23 22:04:31 -07:00
2008-02-08 09:22:38 -08:00
2008-04-07 12:19:10 -05:00
2008-04-19 09:59:43 +10:00
2008-02-19 10:04:00 +01:00
2008-03-28 14:45:22 -07:00
2008-03-04 11:18:17 +01:00
2008-02-07 08:42:25 -08:00
2008-02-13 16:21:18 -08:00
2008-03-04 16:35:12 -08:00
2008-04-04 14:46:26 -07:00
2008-04-17 20:05:38 +02:00
2008-03-30 14:20:23 -07:00
2008-02-09 23:24:09 +01:00
2008-03-04 16:35:12 -08:00
2008-02-14 20:58:05 -08:00
2008-02-26 18:42:44 -08:00
2008-02-06 22:57:58 -05:00
2008-03-26 00:45:26 -04:00
2008-02-11 20:48:29 -08:00
2008-02-08 15:33:33 -08:00
2008-02-14 21:17:09 -08:00
2008-02-14 21:17:08 -08:00
2008-03-04 14:47:06 -08:00
2008-03-04 16:35:12 -08:00
2008-02-08 02:10:01 +00:00
2008-02-11 11:06:35 -05:00
2008-02-08 02:09:56 +00:00
2008-04-17 13:25:54 -07:00
2008-02-08 09:22:24 -08:00
2008-02-08 09:22:37 -08:00
2008-02-07 08:42:06 -08:00
2008-02-08 09:22:30 -08:00
2008-02-07 09:02:26 -08:00
2008-02-29 08:06:37 -08:00
2008-02-07 08:42:30 -08:00
2008-02-07 18:04:10 -06:00
2008-02-07 08:42:25 -08:00
2008-02-13 16:21:19 -08:00
2008-03-07 11:11:13 -08:00
2008-03-14 09:49:57 -07:00
2008-02-07 08:42:27 -08:00
2008-02-25 16:54:37 -05:00
2008-02-10 01:11:44 -05:00
2008-02-13 16:21:18 -08:00
2008-04-10 02:02:28 -07:00
2008-03-10 16:33:33 -07:00
2008-02-14 21:13:33 -08:00
2008-02-19 10:04:00 +01:00
2008-04-16 20:09:35 -04:00
2008-02-06 10:41:05 -08:00
2008-02-23 17:12:15 -08:00
2008-03-12 12:34:37 -07:00
2008-02-13 16:21:18 -08:00
2008-03-04 16:35:10 -08:00
2008-03-28 14:45:21 -07:00
2008-02-07 08:42:34 -08:00
2008-04-18 00:46:24 +02:00
2008-02-19 01:41:26 +01:00
2008-02-11 13:01:51 +01:00
2008-04-04 18:36:49 +02:00
2008-04-17 12:22:31 +02:00
2008-02-13 16:21:18 -08:00
2008-02-07 20:39:44 -05:00
2008-02-24 20:03:42 +01:00
2008-03-05 20:58:10 -08:00
2008-04-18 00:46:33 +02:00
2008-03-06 15:30:40 -05:00
2008-03-03 12:20:57 -08:00
2008-02-23 20:09:11 -08:00
2008-04-12 18:48:58 -07:00
2008-04-03 10:06:00 +09:00
2008-04-16 00:48:04 -07:00
2008-03-23 22:05:44 -07:00
2008-04-12 13:43:19 +09:00
2008-03-17 22:48:46 -07:00
2008-03-26 04:39:53 +09:00
2008-02-19 21:00:18 +01:00
2008-04-01 00:22:53 -04:00
2008-04-17 07:47:05 +02:00
2008-04-15 09:25:33 +02:00
2008-03-04 16:35:17 -08:00
2008-04-20 21:47:08 -07:00
2008-02-08 09:22:26 -08:00
2008-02-08 09:22:23 -08:00
2008-04-14 02:30:23 -07:00
2008-04-17 07:47:05 +02:00
2008-04-15 00:30:16 -07:00
2008-02-07 08:42:33 -08:00
2008-02-07 08:42:34 -08:00
2008-03-19 18:53:36 -07:00
2008-02-08 09:22:29 -08:00
2008-04-15 00:27:58 -07:00
2008-02-08 09:22:41 -08:00
2008-02-07 08:42:25 -08:00
2008-04-17 20:05:42 +02:00
2008-03-04 16:35:11 -08:00
2008-02-14 22:08:30 +01:00
2008-03-04 15:19:40 +02:00
2008-03-03 11:22:25 +02:00
2008-02-07 09:49:38 +00:00
2008-03-28 11:05:54 +11:00
2008-04-17 15:44:25 -04:00
2008-04-11 08:29:13 -07:00
2008-03-31 10:41:44 +01:00
2008-02-26 14:03:47 +09:00
2008-03-04 16:35:14 -08:00
2008-04-15 19:35:41 -07:00
2008-03-04 16:35:15 -08:00
2008-03-19 18:53:37 -07:00
2008-03-04 16:35:12 -08:00
2008-03-12 12:34:37 -07:00
2008-02-14 20:58:04 -08:00
2008-02-13 16:21:19 -08:00
2008-03-27 20:47:58 -04:00
2008-04-13 23:21:16 -07:00
2008-04-04 10:44:42 +09:00
2008-04-07 12:15:39 -05:00
2008-02-13 16:21:18 -08:00
2008-02-08 09:22:31 -08:00
2008-02-14 21:13:33 -08:00
2008-02-08 09:22:41 -08:00
2008-03-22 17:18:47 -07:00
2008-04-16 02:02:18 -07:00
2008-04-14 11:15:52 +02:00
2008-04-14 11:15:49 +02:00
2008-03-04 12:28:49 -08:00
2008-03-07 14:35:37 -05:00
2008-03-06 15:30:41 -05:00
2008-02-21 16:40:15 -08:00
2008-02-13 16:21:18 -08:00
2008-02-14 21:13:33 -08:00
2008-03-10 18:01:19 -07:00
2008-04-20 21:47:03 -07:00
2008-04-20 21:47:03 -07:00
2008-04-20 21:47:07 -07:00
2008-02-07 23:11:56 -08:00
2008-04-17 15:31:33 -04:00
2008-02-08 09:22:23 -08:00
2008-02-13 16:21:18 -08:00
2008-04-04 10:44:42 +09:00
2008-03-17 22:46:46 -07:00
2008-02-23 10:40:04 -08:00
2008-03-13 10:09:27 +11:00
2008-04-11 08:06:44 -07:00
2008-02-08 09:22:31 -08:00
2008-03-07 11:08:40 -08:00
2008-02-08 09:22:26 -08:00
2008-02-07 08:42:28 -08:00
2008-04-17 10:42:14 -04:00
2008-02-29 18:46:50 +01:00
2008-02-06 10:41:06 -08:00
2008-03-19 18:53:36 -07:00
2008-02-08 09:22:41 -08:00
2008-02-07 08:42:18 -08:00
2008-02-07 08:42:19 -08:00
2008-02-13 16:21:18 -08:00
2008-04-07 12:15:45 -05:00
2008-03-26 08:28:55 +01:00
2008-04-18 18:18:30 -07:00
2008-04-19 09:53:46 +10:00
2008-04-17 10:43:01 -04:00
2008-04-02 00:10:28 -07:00
2008-04-02 00:10:28 -07:00
2008-02-07 08:42:34 -08:00
2008-04-17 20:05:37 +02:00
2008-02-26 14:52:45 +09:00
2008-02-07 08:42:30 -08:00
2008-02-08 09:22:41 -08:00
2008-02-08 09:22:27 -08:00
2008-04-14 00:05:28 -07:00
2008-03-06 16:21:49 -08:00
2008-04-14 18:53:02 +03:00
2008-03-04 16:35:13 -08:00
2008-03-04 16:35:13 -08:00
2008-03-17 07:49:27 -04:00
2008-04-17 12:22:31 +02:00
2008-02-07 08:42:34 -08:00
2008-02-13 16:21:18 -08:00
2008-02-09 11:08:33 -08:00
2008-03-21 16:33:01 -07:00
2008-04-15 19:35:41 -07:00
2008-04-17 12:22:30 +02:00
2008-03-10 18:01:18 -07:00
2008-03-09 08:42:57 +01:00
2008-02-08 09:22:37 -08:00
2008-03-09 08:42:57 +01:00
2008-03-21 16:43:48 +01:00
2008-04-07 12:19:10 -05:00
2008-04-17 20:05:37 +02:00
2008-02-07 08:42:16 -08:00
2008-02-08 09:22:39 -08:00
2008-04-17 20:05:36 +02:00
2008-02-08 09:22:34 -08:00
2008-02-08 09:22:36 -08:00
2008-03-23 22:06:51 -07:00
2008-03-24 22:26:14 -07:00
2008-03-04 14:57:43 -08:00
2008-02-08 09:22:23 -08:00
2008-02-18 12:18:05 -03:00
2008-02-18 12:18:05 -03:00
2008-04-07 13:14:22 -07:00
2008-02-29 08:36:13 -08:00
2008-02-06 10:41:15 -08:00
2008-02-13 16:21:18 -08:00
2008-03-06 15:30:40 -05:00
2008-02-13 16:21:18 -08:00
2008-02-28 21:31:08 -08:00