Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Fri, 12 Oct 2007 02:40:14 +0000 (19:40 -0700)]
* 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (867 commits)
  [SKY2]: status polling loop (post merge)
  [NET]: Fix NAPI completion handling in some drivers.
  [TCP]: Limit processing lost_retrans loop to work-to-do cases
  [TCP]: Fix lost_retrans loop vs fastpath problems
  [TCP]: No need to re-count fackets_out/sacked_out at RTO
  [TCP]: Extract tcp_match_queue_to_sack from sacktag code
  [TCP]: Kill almost unused variable pcount from sacktag
  [TCP]: Fix mark_head_lost to ignore R-bit when trying to mark L
  [TCP]: Add bytes_acked (ABC) clearing to FRTO too
  [IPv6]: Update setsockopt(IPV6_MULTICAST_IF) to support RFC 3493, try2
  [NETFILTER]: x_tables: add missing ip6t_modulename aliases
  [NETFILTER]: nf_conntrack_tcp: fix connection reopening
  [QETH]: fix qeth_main.c
  [NETLINK]: fib_frontend build fixes
  [IPv6]: Export userland ND options through netlink (RDNSS support)
  [9P]: build fix with !CONFIG_SYSCTL
  [NET]: Fix dev_put() and dev_hold() comments
  [NET]: make netlink user -> kernel interface synchronious
  [NET]: unify netlink kernel socket recognition
  [NET]: cleanup 3rd argument in netlink_sendskb
  ...

Fix up conflicts manually in Documentation/feature-removal-schedule.txt
and my new least favourite crap, the "mod_devicetable" support in the
files include/linux/mod_devicetable.h and scripts/mod/file2alias.c.

(The latter files seem to be explicitly _designed_ to get conflicts when
different subsystems work with them - that have an absolutely horrid
lack of subsystem separation!)

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

12 files changed:
1  2 
Documentation/feature-removal-schedule.txt
MAINTAINERS
arch/mips/configs/bigsur_defconfig
arch/mips/configs/sb1250-swarm_defconfig
arch/x86/kernel/irq_32.c
arch/x86/kernel/irq_64.c
drivers/block/aoe/aoecmd.c
drivers/media/dvb/dvb-core/dvb_net.c
fs/compat_ioctl.c
include/linux/mod_devicetable.h
include/linux/pci_ids.h
scripts/mod/file2alias.c

@@@ -307,10 -307,11 +307,23 @@@ Who:    Stephen Hemminger <shemminger@l
  
  ---------------------------
  
 +What: i386/x86_64 bzImage symlinks
 +When: April 2008
 +
 +Why:  The i386/x86_64 merge provides a symlink to the old bzImage
 +      location so not yet updated user space tools, e.g. package
 +      scripts, do not break.
 +Who:  Thomas Gleixner <tglx@linutronix.de>
++
++---------------------------
++
+ What: shaper network driver
+ When: January 2008
+ Files:        drivers/net/shaper.c, include/linux/if_shaper.h
+ Why:  This driver has been marked obsolete for many years.
+       It was only designed to work on lower speed links and has design
+       flaws that lead to machine crashes. The qdisc infrastructure in
+       2.4 or later kernels, provides richer features and is more robust.
+ Who:  Stephen Hemminger <shemminger@linux-foundation.org>
++
++---------------------------
diff --cc MAINTAINERS
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -340,15 -340,19 +340,30 @@@ struct parisc_device_id 
  #define PA_HVERSION_ANY_ID    0xffff
  #define PA_SVERSION_ANY_ID    0xffffffff
  
 +/* SDIO */
 +
 +#define SDIO_ANY_ID (~0)
 +
 +struct sdio_device_id {
 +      __u8    class;                  /* Standard interface or SDIO_ANY_ID */
 +      __u16   vendor;                 /* Vendor or SDIO_ANY_ID */
 +      __u16   device;                 /* Device ID or SDIO_ANY_ID */
 +      kernel_ulong_t driver_data;     /* Data private to the driver */
 +};
 +
+ /* SSB core, see drivers/ssb/ */
+ struct ssb_device_id {
+       __u16   vendor;
+       __u16   coreid;
+       __u8    revision;
+ };
+ #define SSB_DEVICE(_vendor, _coreid, _revision)  \
+       { .vendor = _vendor, .coreid = _coreid, .revision = _revision, }
+ #define SSB_DEVTABLE_END  \
+       { 0, },
+ #define SSB_ANY_VENDOR                0xFFFF
+ #define SSB_ANY_ID            0xFFFF
+ #define SSB_ANY_REV           0xFF
  #endif /* LINUX_MOD_DEVICETABLE_H */
Simple merge
@@@ -484,19 -484,18 +484,33 @@@ static int do_parisc_entry(const char *
        return 1;
  }
  
 +/* Looks like: sdio:cNvNdN. */
 +static int do_sdio_entry(const char *filename,
 +                      struct sdio_device_id *id, char *alias)
 +{
 +      id->class = TO_NATIVE(id->class);
 +      id->vendor = TO_NATIVE(id->vendor);
 +      id->device = TO_NATIVE(id->device);
 +
 +      strcpy(alias, "sdio:");
 +      ADD(alias, "c", id->class != (__u8)SDIO_ANY_ID, id->class);
 +      ADD(alias, "v", id->vendor != (__u16)SDIO_ANY_ID, id->vendor);
 +      ADD(alias, "d", id->device != (__u16)SDIO_ANY_ID, id->device);
++      return 1;
++}
++
+ /* Looks like: ssb:vNidNrevN. */
+ static int do_ssb_entry(const char *filename,
+                       struct ssb_device_id *id, char *alias)
+ {
+       id->vendor = TO_NATIVE(id->vendor);
+       id->coreid = TO_NATIVE(id->coreid);
+       id->revision = TO_NATIVE(id->revision);
  
+       strcpy(alias, "ssb:");
+       ADD(alias, "v", id->vendor != SSB_ANY_VENDOR, id->vendor);
+       ADD(alias, "id", id->coreid != SSB_ANY_ID, id->coreid);
+       ADD(alias, "rev", id->revision != SSB_ANY_REV, id->revision);
        return 1;
  }
  
@@@ -615,10 -614,10 +629,14 @@@ void handle_moddevtable(struct module *
                do_table(symval, sym->st_size,
                         sizeof(struct parisc_device_id), "parisc",
                         do_parisc_entry, mod);
 +      else if (sym_is(symname, "__mod_sdio_device_table"))
 +              do_table(symval, sym->st_size,
 +                       sizeof(struct sdio_device_id), "sdio",
 +                       do_sdio_entry, mod);
+       else if (sym_is(symname, "__mod_ssb_device_table"))
+               do_table(symval, sym->st_size,
+                        sizeof(struct ssb_device_id), "ssb",
+                        do_ssb_entry, mod);
  }
  
  /* Now add out buffered information to the generated C source */