VT_WAITACTIVE: Avoid returning EINTR when not necessary
Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=70cb97935b8859f27296772885104b599f560576 Commit: 70cb97935b8859f27296772885104b599f560576 Parent: fc8b28a65d81a6fdf58ef81ce5b8ac7a35304e68 Author: Linus Torvalds [EMAIL PROTECTED] AuthorDate: Sun Oct 7 16:02:55 2007 -0700 Committer: Linus Torvalds [EMAIL PROTECTED] CommitDate: Sun Oct 7 16:02:55 2007 -0700 VT_WAITACTIVE: Avoid returning EINTR when not necessary We should generally prefer to return ERESTARTNOHAND rather than EINTR, so that processes with unhandled signals that get ignored don't return EINTR. This can help with X startup issues: Fatal server error: xf86OpenConsole: VT_WAITACTIVE failed: Interrupted system call although the real fix is having the X server always retry EINTR regardless (since EINTR does happen for signals that have handlers installed). Keithp has a patch for that. Regardless, ERESTARTNOHAND is the correct thing to use. Signed-off-by: Linus Torvalds [EMAIL PROTECTED] --- drivers/char/vt_ioctl.c |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/char/vt_ioctl.c b/drivers/char/vt_ioctl.c index c799b7f..7a61a2a 100644 --- a/drivers/char/vt_ioctl.c +++ b/drivers/char/vt_ioctl.c @@ -1032,7 +1032,7 @@ static DECLARE_WAIT_QUEUE_HEAD(vt_activate_queue); /* * Sleeps until a vt is activated, or the task is interrupted. Returns - * 0 if activation, -EINTR if interrupted. + * 0 if activation, -EINTR if interrupted by a signal handler. */ int vt_waitactive(int vt) { @@ -1057,7 +1057,7 @@ int vt_waitactive(int vt) break; } release_console_sem(); - retval = -EINTR; + retval = -ERESTARTNOHAND; if (signal_pending(current)) break; schedule(); - To unsubscribe from this list: send the line unsubscribe git-commits-head in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Don't do load-average calculations at even 5-second intervals
Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0c2043abefacac97b6d01129c1123a466c95b7c1 Commit: 0c2043abefacac97b6d01129c1123a466c95b7c1 Parent: 70cb97935b8859f27296772885104b599f560576 Author: Linus Torvalds [EMAIL PROTECTED] AuthorDate: Sun Oct 7 16:17:38 2007 -0700 Committer: Linus Torvalds [EMAIL PROTECTED] CommitDate: Sun Oct 7 16:23:13 2007 -0700 Don't do load-average calculations at even 5-second intervals It turns out that there are a few other five-second timers in the kernel, and if the timers get in sync, the load-average can get artificially inflated by events that just happen to coincide. So just offset the load average calculation it by a timer tick. Noticed by Anders Boström, for whom the coincidence started triggering on one of his machines with the JBD jiffies rounding code (JBD is one of the subsystems that also end up using a 5-second timer by default). Tested-by: Anders Boström [EMAIL PROTECTED] Cc: Chuck Ebbert [EMAIL PROTECTED] Cc: Arjan van de Ven [EMAIL PROTECTED] Cc: Andrew Morton [EMAIL PROTECTED] Signed-off-by: Linus Torvalds [EMAIL PROTECTED] --- include/linux/sched.h |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/include/linux/sched.h b/include/linux/sched.h index a01ac6d..313c6b6 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h @@ -113,7 +113,7 @@ extern unsigned long avenrun[]; /* Load averages */ #define FSHIFT 11 /* nr of bits of precision */ #define FIXED_1(1FSHIFT) /* 1.0 as fixed-point */ -#define LOAD_FREQ (5*HZ) /* 5 sec intervals */ +#define LOAD_FREQ (5*HZ+1)/* 5 sec intervals */ #define EXP_1 1884/* 1/exp(5sec/1min) as fixed-point */ #define EXP_5 2014/* 1/exp(5sec/5min) */ #define EXP_15 2037/* 1/exp(5sec/15min) */ - To unsubscribe from this list: send the line unsubscribe git-commits-head in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Fix timer_stats printout of events/sec
Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=74922be1485818ed368c4cf4f0b100f70bf01e08 Commit: 74922be1485818ed368c4cf4f0b100f70bf01e08 Parent: 0c2043abefacac97b6d01129c1123a466c95b7c1 Author: Anton Blanchard [EMAIL PROTECTED] AuthorDate: Sun Oct 7 00:24:31 2007 -0700 Committer: Linus Torvalds [EMAIL PROTECTED] CommitDate: Sun Oct 7 16:28:43 2007 -0700 Fix timer_stats printout of events/sec When using /proc/timer_stats on ppc64 I noticed the events/sec field wasnt accurate. Sometimes the integer part was incorrect due to rounding (we werent taking the fractional seconds into consideration). The fraction part is also wrong, we need to pad the printf statement and take the bottom three digits of 1000 times the value. Signed-off-by: Anton Blanchard [EMAIL PROTECTED] Acked-by: Ingo Molnar [EMAIL PROTECTED] Cc: [EMAIL PROTECTED] Signed-off-by: Andrew Morton [EMAIL PROTECTED] Signed-off-by: Linus Torvalds [EMAIL PROTECTED] --- kernel/time/timer_stats.c |5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) diff --git a/kernel/time/timer_stats.c b/kernel/time/timer_stats.c index 3c38fb5..c36bb7e 100644 --- a/kernel/time/timer_stats.c +++ b/kernel/time/timer_stats.c @@ -327,8 +327,9 @@ static int tstats_show(struct seq_file *m, void *v) ms = 1; if (events period.tv_sec) - seq_printf(m, %ld total events, %ld.%ld events/sec\n, events, - events / period.tv_sec, events * 1000 / ms); + seq_printf(m, %ld total events, %ld.%03ld events/sec\n, + events, events * 1000 / ms, + (events * 100 / ms) % 1000); else seq_printf(m, %ld total events\n, events); - To unsubscribe from this list: send the line unsubscribe git-commits-head in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Longhaul: add auto enabled revid_errata option
Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=52a2638bff063acb28ba3355891c49cc240cc98b Commit: 52a2638bff063acb28ba3355891c49cc240cc98b Parent: 74922be1485818ed368c4cf4f0b100f70bf01e08 Author: Rafal Bilski [EMAIL PROTECTED] AuthorDate: Sun Oct 7 00:24:32 2007 -0700 Committer: Linus Torvalds [EMAIL PROTECTED] CommitDate: Sun Oct 7 16:28:43 2007 -0700 Longhaul: add auto enabled revid_errata option VIA C3 Ezra-T has RevisionID equal to 1, but it needs RevisionKey to be 0 or CPU will ignore new frequency and will continue to work at old frequency. New revid_errata option will force RevisionKey to be set to 0, whatever RevisionID is. Additionaly Longhaul will not silently ignore unsuccessful transition. It will try to check if revid_errata or disable_acpi_c3 options need to be enabled for this processor/system. Same for Longhaul ver. 2 support. It will be disabled if none of above options will work. Best case scenario (with patch apllied and v2 enabled): longhaul: VIA C3 'Ezra' [C5C] CPU detected. Longhaul v2 supported. longhaul: Using northbridge support. longhaul: VRM 8.5 longhaul: Max VID=1.350 Min VID=1.050, 13 possible voltage scales longhaul: f: 30 kHz, index: 0, vid: 1050 mV [...] longhaul: Voltage scaling enabled. Worst case scenario: longhaul: VIA C3 'Ezra-T' [C5M] CPU detected. Powersaver supported. longhaul: Using northbridge support. longhaul: Using ACPI support. longhaul: VRM 8.5 longhaul: Claims to support voltage scaling but min max are both 1.250. Voltage scaling disabled longhaul: Failed to set requested frequency! longhaul: Enabling Ignore Revision ID option. longhaul: Failed to set requested frequency! longhaul: Disabling ACPI C3 support. longhaul: Disabling Ignore Revision ID option. longhaul: Failed to set requested frequency! longhaul: Enabling Ignore Revision ID option. [EMAIL PROTECTED]: coding-style cleanups] Signed-off-by: Rafal Bilski [EMAIL PROTECTED] Signed-off-by: Dave Jones [EMAIL PROTECTED] Signed-off-by: Andrew Morton [EMAIL PROTECTED] Signed-off-by: Linus Torvalds [EMAIL PROTECTED] --- arch/i386/kernel/cpu/cpufreq/longhaul.c | 60 +-- 1 files changed, 57 insertions(+), 3 deletions(-) diff --git a/arch/i386/kernel/cpu/cpufreq/longhaul.c b/arch/i386/kernel/cpu/cpufreq/longhaul.c index ef8f0bc..f0cce3c 100644 --- a/arch/i386/kernel/cpu/cpufreq/longhaul.c +++ b/arch/i386/kernel/cpu/cpufreq/longhaul.c @@ -76,6 +76,7 @@ static unsigned int longhaul_index; /* Module parameters */ static int scale_voltage; static int disable_acpi_c3; +static int revid_errata; #define dprintk(msg...) cpufreq_debug_printk(CPUFREQ_DEBUG_DRIVER, longhaul, msg) @@ -168,7 +169,10 @@ static void do_powersaver(int cx_address, unsigned int clock_ratio_index, rdmsrl(MSR_VIA_LONGHAUL, longhaul.val); /* Setup new frequency */ - longhaul.bits.RevisionKey = longhaul.bits.RevisionID; + if (!revid_errata) + longhaul.bits.RevisionKey = longhaul.bits.RevisionID; + else + longhaul.bits.RevisionKey = 0; longhaul.bits.SoftBusRatio = clock_ratio_index 0xf; longhaul.bits.SoftBusRatio4 = (clock_ratio_index 0x10) 4; /* Setup new voltage */ @@ -272,7 +276,7 @@ static void longhaul_setstate(unsigned int table_index) dprintk (Setting to FSB:%dMHz Mult:%d.%dx (%s)\n, fsb, mult/10, mult%10, print_speed(speed/1000)); - +retry_loop: preempt_disable(); local_irq_save(flags); @@ -344,6 +348,47 @@ static void longhaul_setstate(unsigned int table_index) preempt_enable(); freqs.new = calc_speed(longhaul_get_cpu_mult()); + /* Check if requested frequency is set. */ + if (unlikely(freqs.new != speed)) { + printk(KERN_INFO PFX Failed to set requested frequency!\n); + /* Revision ID = 1 but processor is expecting revision key +* equal to 0. Jumpers at the bottom of processor will change +* multiplier and FSB, but will not change bits in Longhaul +* MSR nor enable voltage scaling. */ + if (!revid_errata) { + printk(KERN_INFO PFX Enabling \Ignore Revision ID\ + option.\n); + revid_errata = 1; + msleep(200); + goto retry_loop; + } + /* Why ACPI C3 sometimes doesn't work is a mystery for me. +* But it does happen. Processor is entering ACPI C3 state, +* but it doesn't change frequency. I tried poking various +* bits in northbridge registers, but without success. */ +
lockstat: documentation
Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a560aa48eed66fdf78f2a2813ab7b4ca766a84ce Commit: a560aa48eed66fdf78f2a2813ab7b4ca766a84ce Parent: 52a2638bff063acb28ba3355891c49cc240cc98b Author: Peter Zijlstra [EMAIL PROTECTED] AuthorDate: Sun Oct 7 00:24:33 2007 -0700 Committer: Linus Torvalds [EMAIL PROTECTED] CommitDate: Sun Oct 7 16:28:43 2007 -0700 lockstat: documentation Provide some documentation for CONFIG_LOCK_STAT. Signed-off-by: Peter Zijlstra [EMAIL PROTECTED] Acked-by: Ingo Molnar [EMAIL PROTECTED] Cc: Randy.Dunlap [EMAIL PROTECTED] Cc: Rob Landley [EMAIL PROTECTED] Signed-off-by: Andrew Morton [EMAIL PROTECTED] Signed-off-by: Linus Torvalds [EMAIL PROTECTED] --- Documentation/lockstat.txt | 120 lib/Kconfig.debug |2 + 2 files changed, 122 insertions(+), 0 deletions(-) diff --git a/Documentation/lockstat.txt b/Documentation/lockstat.txt new file mode 100644 index 000..4ba4664 --- /dev/null +++ b/Documentation/lockstat.txt @@ -0,0 +1,120 @@ + +LOCK STATISTICS + +- WHAT + +As the name suggests, it provides statistics on locks. + +- WHY + +Because things like lock contention can severely impact performance. + +- HOW + +Lockdep already has hooks in the lock functions and maps lock instances to +lock classes. We build on that. The graph below shows the relation between +the lock functions and the various hooks therein. + +__acquire +| + lock _ +|\ +|__contended +| | +| wait +| ___/ +|/ +| + __acquired +| +. + hold +. +| + __release +| + unlock + +lock, unlock - the regular lock functions +__*- the hooks + - states + +With these hooks we provide the following statistics: + + con-bounces - number of lock contention that involved x-cpu data + contentions - number of lock acquisitions that had to wait + wait time min - shortest (non-0) time we ever had to wait for a lock + max - longest time we ever had to wait for a lock + total - total time we spend waiting on this lock + acq-bounces - number of lock acquisitions that involved x-cpu data + acquisitions - number of times we took the lock + hold time min - shortest (non-0) time we ever held the lock + max - longest time we ever held the lock + total - total time this lock was held + +From these number various other statistics can be derived, such as: + + hold time average = hold time total / acquisitions + +These numbers are gathered per lock class, per read/write state (when +applicable). + +It also tracks 4 contention points per class. A contention point is a call site +that had to wait on lock acquisition. + + - USAGE + +Look at the current lock statistics: + +( line numbers not part of actual output, done for clarity in the explanation + below ) + +# less /proc/lock_stat + +01 lock_stat version 0.2 +02 --- +03 class namecon-bouncescontentions waittime-min waittime-max waittime-totalacq-bounces acquisitions holdtime-min holdtime-max holdtime-total +04 --- +05 +06 inode-i_data.tree_lock-W:15 21657 0.18 1093295.30 11547131054.85 58 10415 0.16 87.516387.60 +07 inode-i_data.tree_lock-R: 0 0 0.00 0.00 0.00 23302 231198 0.25 8.45 98023.38 +08 -- +09 inode-i_data.tree_lock 0 [8027c08f] add_to_page_cache+0x5f/0x190 +10 +11 ... +12 +13 dcache_lock: 1037 1161 0.38 45.32 774.51 6611 243371 0.15 306.48 77387.24 +14 --- +15 dcache_lock180 [802c0d7e] sys_getcwd+0x11e/0x230 +16 dcache_lock165
Move kasprintf.o to obj-y
Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7a5c5d5735e785a700a377a5fce913b8ad45a58f Commit: 7a5c5d5735e785a700a377a5fce913b8ad45a58f Parent: a560aa48eed66fdf78f2a2813ab7b4ca766a84ce Author: Alexey Dobriyan [EMAIL PROTECTED] AuthorDate: Sun Oct 7 00:24:34 2007 -0700 Committer: Linus Torvalds [EMAIL PROTECTED] CommitDate: Sun Oct 7 16:28:43 2007 -0700 Move kasprintf.o to obj-y Modulat lguest started giving linking errors MODPOST 1 modules ERROR: kasprintf [drivers/lguest/lg.ko] undefined! Signed-off-by: Alexey Dobriyan [EMAIL PROTECTED] Cc: Rusty Russell [EMAIL PROTECTED] Signed-off-by: Andrew Morton [EMAIL PROTECTED] Signed-off-by: Linus Torvalds [EMAIL PROTECTED] --- lib/Makefile |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/Makefile b/lib/Makefile index 6b0ba8c..4f3f3e2 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -2,7 +2,7 @@ # Makefile for some libs needed in the kernel. # -lib-y := ctype.o string.o vsprintf.o kasprintf.o cmdline.o \ +lib-y := ctype.o string.o vsprintf.o cmdline.o \ rbtree.o radix-tree.o dump_stack.o \ idr.o int_sqrt.o bitmap.o extable.o prio_tree.o \ sha1.o irq_regs.o reciprocal_div.o argv_split.o @@ -13,7 +13,7 @@ lib-$(CONFIG_SMP) += cpumask.o lib-y += kobject.o kref.o kobject_uevent.o klist.o obj-y += div64.o sort.o parser.o halfmd4.o debug_locks.o random32.o \ -bust_spinlocks.o hexdump.o +bust_spinlocks.o hexdump.o kasprintf.o ifeq ($(CONFIG_DEBUG_KOBJECT),y) CFLAGS_kobject.o += -DDEBUG - To unsubscribe from this list: send the line unsubscribe git-commits-head in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
fix bogus reporting of signals by audit
Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=291041e935e6d0513f2b7e4a300aa9f02ec1d925 Commit: 291041e935e6d0513f2b7e4a300aa9f02ec1d925 Parent: 7a5c5d5735e785a700a377a5fce913b8ad45a58f Author: Al Viro [EMAIL PROTECTED] AuthorDate: Sun Oct 7 00:24:36 2007 -0700 Committer: Linus Torvalds [EMAIL PROTECTED] CommitDate: Sun Oct 7 16:28:43 2007 -0700 fix bogus reporting of signals by audit Async signals should not be reported as sent by current in audit log. As it is, we call audit_signal_info() too early in check_kill_permission(). Note that check_kill_permission() has that test already - it needs to know if it should apply current-based permission checks. So the solution is to move the call of audit_signal_info() between those. Bogosity in question is easily reproduced - add a rule watching for e.g. kill(2) from specific process (so that audit_signal_info() would not short-circuit to nothing), say load_policy, watch the bogus OBJ_PID entry in audit logs claiming that write(2) on selinuxfs file issued by load_policy(8) had somehow managed to send a signal to syslogd... Signed-off-by: Al Viro [EMAIL PROTECTED] Acked-by: Steve Grubb [EMAIL PROTECTED] Acked-by: Eric Paris [EMAIL PROTECTED] Signed-off-by: Andrew Morton [EMAIL PROTECTED] Signed-off-by: Linus Torvalds [EMAIL PROTECTED] --- kernel/signal.c | 22 +++--- 1 files changed, 11 insertions(+), 11 deletions(-) diff --git a/kernel/signal.c b/kernel/signal.c index 9fb91a3..7929523 100644 --- a/kernel/signal.c +++ b/kernel/signal.c @@ -531,18 +531,18 @@ static int check_kill_permission(int sig, struct siginfo *info, if (!valid_signal(sig)) return error; - error = audit_signal_info(sig, t); /* Let audit system see the signal */ - if (error) - return error; - - error = -EPERM; - if ((info == SEND_SIG_NOINFO || (!is_si_special(info) SI_FROMUSER(info))) -((sig != SIGCONT) || - (process_session(current) != process_session(t))) -(current-euid ^ t-suid) (current-euid ^ t-uid) -(current-uid ^ t-suid) (current-uid ^ t-uid) -!capable(CAP_KILL)) + if (info == SEND_SIG_NOINFO || (!is_si_special(info) SI_FROMUSER(info))) { + error = audit_signal_info(sig, t); /* Let audit system see the signal */ + if (error) + return error; + error = -EPERM; + if (((sig != SIGCONT) || + (process_session(current) != process_session(t))) +(current-euid ^ t-suid) (current-euid ^ t-uid) +(current-uid ^ t-suid) (current-uid ^ t-uid) +!capable(CAP_KILL)) return error; + } return security_task_kill(t, info, sig, 0); } - To unsubscribe from this list: send the line unsubscribe git-commits-head in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
sysrq docs: document sequence that actually works
Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=dfb0042d43d4e7664f7e3af1b51c9b08175483a6 Commit: dfb0042d43d4e7664f7e3af1b51c9b08175483a6 Parent: 291041e935e6d0513f2b7e4a300aa9f02ec1d925 Author: Pavel Machek [EMAIL PROTECTED] AuthorDate: Sun Oct 7 00:24:37 2007 -0700 Committer: Linus Torvalds [EMAIL PROTECTED] CommitDate: Sun Oct 7 16:28:43 2007 -0700 sysrq docs: document sequence that actually works Document sequence of keypresses that actually works. Yes, this changed year-or-so ago. Signed-off-by: Pavel Machek [EMAIL PROTECTED] Signed-off-by: Andrew Morton [EMAIL PROTECTED] Signed-off-by: Linus Torvalds [EMAIL PROTECTED] --- Documentation/sysrq.txt |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/Documentation/sysrq.txt b/Documentation/sysrq.txt index ef19142..10c8f69 100644 --- a/Documentation/sysrq.txt +++ b/Documentation/sysrq.txt @@ -43,7 +43,7 @@ On x86 - You press the key combo 'ALT-SysRq-command key'. Note - Some keyboards may not have a key labeled 'SysRq'. The 'SysRq' key is also known as the 'Print Screen' key. Also some keyboards cannot handle so many keys being pressed at the same time, so you might - have better luck with press Alt, press SysRq, release Alt, + have better luck with press Alt, press SysRq, release SysRq, press command key, release everything. On SPARC - You press 'ALT-STOP-command key', I believe. - To unsubscribe from this list: send the line unsubscribe git-commits-head in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Add manufacturer and card id of teltonica pcmcia modems
Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9d9b7ad717474636dc961e6c321970fd799e1cb3 Commit: 9d9b7ad717474636dc961e6c321970fd799e1cb3 Parent: dfb0042d43d4e7664f7e3af1b51c9b08175483a6 Author: Attila Kinali [EMAIL PROTECTED] AuthorDate: Sun Oct 7 00:24:38 2007 -0700 Committer: Linus Torvalds [EMAIL PROTECTED] CommitDate: Sun Oct 7 16:28:43 2007 -0700 Add manufacturer and card id of teltonica pcmcia modems Add the manufacturer and card id of teltonica pcmcia modems to serial_cs.c Signed-off-by: Attila Kinali [EMAIL PROTECTED] Acked-by: Alan Cox [EMAIL PROTECTED] Signed-off-by: Andrew Morton [EMAIL PROTECTED] Signed-off-by: Linus Torvalds [EMAIL PROTECTED] --- drivers/serial/serial_cs.c |1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/drivers/serial/serial_cs.c b/drivers/serial/serial_cs.c index a0ea435..7c8d78f 100644 --- a/drivers/serial/serial_cs.c +++ b/drivers/serial/serial_cs.c @@ -943,6 +943,7 @@ static struct pcmcia_device_id serial_ids[] = { PCMCIA_MFC_DEVICE_PROD_ID12(1,Elan,Serial Port: SL432,0x3beb8cf2,0x1cce7ac4), PCMCIA_MFC_DEVICE_PROD_ID12(2,Elan,Serial Port: SL432,0x3beb8cf2,0x1cce7ac4), PCMCIA_MFC_DEVICE_PROD_ID12(3,Elan,Serial Port: SL432,0x3beb8cf2,0x1cce7ac4), + PCMCIA_DEVICE_MANF_CARD(0x0279, 0x950b), /* too generic */ /* PCMCIA_MFC_DEVICE_MANF_CARD(0, 0x0160, 0x0002), */ /* PCMCIA_MFC_DEVICE_MANF_CARD(1, 0x0160, 0x0002), */ - To unsubscribe from this list: send the line unsubscribe git-commits-head in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
firewire: point to migration document
Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a1134dd48d59e532b801659163539bf01cae7673 Commit: a1134dd48d59e532b801659163539bf01cae7673 Parent: fc8b28a65d81a6fdf58ef81ce5b8ac7a35304e68 Author: Stefan Richter [EMAIL PROTECTED] AuthorDate: Sun Oct 7 12:31:22 2007 +0200 Committer: Stefan Richter [EMAIL PROTECTED] CommitDate: Sun Oct 7 13:48:41 2007 +0200 firewire: point to migration document Signed-off-by: Stefan Richter [EMAIL PROTECTED] --- drivers/firewire/Kconfig |3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/drivers/firewire/Kconfig b/drivers/firewire/Kconfig index d011a76..fe9e768 100644 --- a/drivers/firewire/Kconfig +++ b/drivers/firewire/Kconfig @@ -11,7 +11,8 @@ config FIREWIRE This is the Juju FireWire stack, a new alternative implementation designed for robustness and simplicity. You can build either this stack, or the classic stack (the ieee1394 driver, ohci1394 etc.) - or both. + or both. Please read http://wiki.linux1394.org/JujuMigration before + you enable the new stack. To compile this driver as a module, say M here: the module will be called firewire-core. It functionally replaces ieee1394, raw1394, - To unsubscribe from this list: send the line unsubscribe git-commits-head in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Driver core: fix SYSF_DEPRECATED breakage for nested classdevs
Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3eb215de26e6e94bf5fed9cb77230c383b30e53b Commit: 3eb215de26e6e94bf5fed9cb77230c383b30e53b Parent: 85923b124624eb49ebef4731bb6b5670e792ff57 Author: Dmitry Torokhov [EMAIL PROTECTED] AuthorDate: Sun Oct 7 12:22:21 2007 -0400 Committer: Linus Torvalds [EMAIL PROTECTED] CommitDate: Sun Oct 7 16:42:22 2007 -0700 Driver core: fix SYSF_DEPRECATED breakage for nested classdevs We should only reparent to a class former class devices that form the base of class hierarchy. Nested devices should still grow from their real parents. Signed-off-by: Dmitry Torokhov [EMAIL PROTECTED] Tested-by: Andrey Borzenkov [EMAIL PROTECTED] Tested-by: Anssi Hannula [EMAIL PROTECTED] Signed-off-by: Linus Torvalds [EMAIL PROTECTED] --- drivers/base/core.c | 10 +++--- 1 files changed, 7 insertions(+), 3 deletions(-) diff --git a/drivers/base/core.c b/drivers/base/core.c index 67c9258..ec86d6f 100644 --- a/drivers/base/core.c +++ b/drivers/base/core.c @@ -586,9 +586,13 @@ void device_initialize(struct device *dev) static struct kobject * get_device_parent(struct device *dev, struct device *parent) { - /* Set the parent to the class, not the parent device */ - /* this keeps sysfs from having a symlink to make old udevs happy */ - if (dev-class) + /* +* Set the parent to the class, not the parent device +* for topmost devices in class hierarchy. +* This keeps sysfs from having a symlink to make old +* udevs happy +*/ + if (dev-class (!parent || parent-class != dev-class)) return dev-class-subsys.kobj; else if (parent) return parent-kobj; - To unsubscribe from this list: send the line unsubscribe git-commits-head in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html