Re: [Fault-injection-developer] RE: [PATCH] 2.5.44-kp2-fi1
Status: Alpha
Brought to you by:
rustyl
From: Rusty L. <ru...@li...> - 2002-11-14 07:12:47
|
s/practive/practice/ As in it is good "practice" to use a spell checker if your name is Rusty Lynch. -rusty ----- Original Message ----- From: "Lynch, Rusty" <rus...@in...> To: "Zhuang, Louis" <lou...@in...>; "'Rusty Lynch'" <ru...@li...>; "Gao, Kevin" <kev...@in...>; "Wang, Frank" <fra...@in...>; "Wang, Stanley" <sta...@in...> Cc: <fau...@li...> Sent: Wednesday, November 13, 2002 11:06 PM Subject: RE: [Fault-injection-developer] RE: [PATCH] 2.5.44-kp2-fi1 > Actually, it's good practive to reply on each of the points, and argue > when you do not agree. > > -rusty > > -----Original Message----- > From: Zhuang, Louis [mailto:lou...@in...] > Sent: Wednesday, November 13, 2002 10:59 PM > To: 'Rusty Lynch'; Gao, Kevin; Wang, Frank; Wang, Stanley > Cc: fau...@li... > Subject: [Fault-injection-developer] RE: [PATCH] 2.5.44-kp2-fi1 > > > As you wish, I am learning to speak rightly in a huge maillist. So I use the > maillist as a playground to practise. ;-) I'll refine my announcement when > the next patch. -Louis > > > -----Original Message----- > > From: Rusty Lynch [mailto:ru...@li...] > > Sent: Thursday, November 14, 2002 2:48 PM > > To: Zhuang, Louis; Gao, Kevin; Wang, Frank; Wang, Stanley > > Cc: fau...@li... > > Subject: Re: [Fault-injection-developer] [PATCH] 2.5.44-kp2-fi1 > > > > > > > > ----- Original Message ----- > > From: "Zhuang, Louis" <lou...@in...> > > To: "Gao, Kevin" <kev...@in...>; "Wang, Frank" > > <fra...@in...>; "Wang, Stanley" > > <sta...@in...>; "Zhuang, > > Louis" <lou...@in...> > > Cc: <fau...@li...> > > Sent: Wednesday, November 13, 2002 6:51 PM > > Subject: [Fault-injection-developer] [PATCH] 2.5.44-kp2-fi1 > > > > > > > Dear all, > > > Following is the first fault injection patch against > > 2.5.x sserials > > > kernel. > > 2.5.x is way to vauge. State exactly which version and any > > patches you depend on. It looks like you implemented on > > 2.5.44 with the kprobes patch applied. > > > > >kernel module part is ongoing. > > Everything is ongoing... unless you think this code is perfect :-> > > > Please review it and give us > > > feedback. > > > > Check out some of the other patches submitted to LKML for some > > more hints on what to describe in your intro. For example: > > > > State which files are touched and why. Keep in mind that this > > patch will need to be submitted to lkml, where most people have > > never heard of FITH and almost everyone will look at this patch as > > yet another something else to break or slow down their server. > > > > > - Louis > > > > > > diff -Nur -X /root/dontdiff 44-kp/Makefile 44-kp-fi/Makefile > > > --- 44-kp/Makefile Sat Oct 19 12:01:12 2002 > > > +++ 44-kp-fi/Makefile Wed Nov 13 16:28:48 2002 > > > @@ -1,7 +1,7 @@ > > > VERSION = 2 > > > PATCHLEVEL = 5 > > > SUBLEVEL = 44 > > > -EXTRAVERSION = > > > +EXTRAVERSION =kp-fi > > Take this out. > > > > > > > > # *DOCUMENTATION* > > > # To see a list of typical targets execute "make help" > > > diff -Nur -X /root/dontdiff 44-kp/arch/i386/Config.help > > > 44-kp-fi/arch/i386/Config.help > > > --- 44-kp/arch/i386/Config.help Wed Nov 13 16:24:41 2002 > > > +++ 44-kp-fi/arch/i386/Config.help Thu Nov 14 09:43:55 2002 > > > > All fo the config stuff has been replaced in 2.5.46. Please > > update with the new Kconfig format. > > > > > @@ -1108,3 +1108,6 @@ > > > register_kprobe(), and providing a callback > > function. This is useful > > > for kernel debugging, non-intrusive instrumentation > > and testing. If > > > in doubt, say "N". > > > + CONFIG_FI > > > + Say Y here if you want to enable Fault Injection > > (FI) mechanism. The FI > > > + can monitor MMIO/IO access in kernel. > > > diff -Nur -X /root/dontdiff 44-kp/arch/i386/config.in > > > 44-kp-fi/arch/i386/config.in > > > --- 44-kp/arch/i386/config.in Wed Nov 13 16:25:00 2002 > > > +++ 44-kp-fi/arch/i386/config.in Thu Nov 14 09:46:44 2002 > > > @@ -469,6 +469,9 @@ > > > fi > > > bool ' Load all symbols for debugging/kksymoops' > > CONFIG_KALLSYMS > > > bool ' Kprobes' CONFIG_KPROBES > > > + if [ "$CONFIG_KPROBES" = "y" ]; then > > > + bool ' Fault Injection' CONFIG_FI > > > + fi > > > fi > > > > > > if [ "$CONFIG_X86_LOCAL_APIC" = "y" ]; then > > > diff -Nur -X /root/dontdiff 44-kp/arch/i386/kernel/i386_ksyms.c > > > 44-kp-fi/arch/i386/kernel/i386_ksyms.c > > > --- 44-kp/arch/i386/kernel/i386_ksyms.c Sat Oct 19 12:02:34 2002 > > > +++ 44-kp-fi/arch/i386/kernel/i386_ksyms.c Thu Nov 14 > > 10:25:53 2002 > > > @@ -32,6 +32,7 @@ > > > #include <asm/tlbflush.h> > > > #include <asm/nmi.h> > > > #include <asm/edd.h> > > > +#include <asm/fi.h> > > > > > > extern void dump_thread(struct pt_regs *, struct user *); > > > extern spinlock_t rtc_lock; > > > @@ -207,3 +208,9 @@ > > > EXPORT_SYMBOL(edd); > > > EXPORT_SYMBOL(eddnr); > > > #endif > > > + > > > +#ifdef CONFIG_FI > > > +EXPORT_SYMBOL(irq_desc); > > > +EXPORT_SYMBOL(fi_page_fault); > > > +EXPORT_SYMBOL(fi_post_page_fault); > > > +#endif > > > diff -Nur -X /root/dontdiff 44-kp/arch/i386/kernel/traps.c > > > 44-kp-fi/arch/i386/kernel/traps.c > > > --- 44-kp/arch/i386/kernel/traps.c Wed Nov 13 16:25:00 2002 > > > +++ 44-kp-fi/arch/i386/kernel/traps.c Thu Nov 14 09:34:36 2002 > > > @@ -47,6 +47,7 @@ > > > #include <asm/smp.h> > > > #include <asm/pgalloc.h> > > > #include <asm/arch_hooks.h> > > > +#include <asm/fi.h> > > > > > > #include <linux/irq.h> > > > #include <linux/module.h> > > > @@ -559,6 +560,9 @@ > > > return 0; > > > } > > > > > > +int (*fi_post_page_fault) (unsigned long condition, > > > + struct pt_regs *reg); > > > + > > > /* > > > * Our handling of the processor debug registers is > > non-trivial. > > > * We do not clear them on entry and exit from the > > kernel. Therefore > > > @@ -595,6 +599,9 @@ > > > if (kwatch_handler(condition, regs)) > > > return 1; > > > > > > + if (fi_post_page_fault && fi_post_page_fault(condition, regs)) > > > + return 1; > > > + > > > /* Interrupts not disabled for normal trap handling. */ > > > restore_interrupts(regs); > > > > > > diff -Nur -X /root/dontdiff 44-kp/arch/i386/mm/fault.c > > > 44-kp-fi/arch/i386/mm/fault.c > > > --- 44-kp/arch/i386/mm/fault.c Wed Nov 13 16:24:41 2002 > > > +++ 44-kp-fi/arch/i386/mm/fault.c Thu Nov 14 09:33:35 2002 > > > @@ -26,6 +26,7 @@ > > > #include <asm/pgalloc.h> > > > #include <asm/hardirq.h> > > > #include <asm/desc.h> > > > +#include <asm/fi.h> > > > > > > extern void die(const char *,struct pt_regs *,long); > > > > > > @@ -127,6 +128,7 @@ > > > } > > > > > > asmlinkage void do_invalid_op(struct pt_regs *, unsigned long); > > > +int (*fi_page_fault) ( struct pt_regs *regs, unsigned > > long address); > > > > > > /* > > > * This routine handles page faults. It determines > > the address, > > > @@ -154,7 +156,9 @@ > > > > > > if (kprobe_running() && kprobe_fault_handler(regs, 14)) > > > return; > > > - > > > + if (fi_page_fault && fi_page_fault(regs, address)) > > > + return; > > > + > > > /* It's safe to allow irq's after cr2 has been saved */ > > > if (regs->eflags & X86_EFLAGS_IF) > > > local_irq_enable(); > > > diff -Nur -X /root/dontdiff 44-kp/drivers/net/e100/e100.h > > > 44-kp-fi/drivers/net/e100/e100.h > > > --- 44-kp/drivers/net/e100/e100.h Sat Oct 19 12:01:20 2002 > > > +++ 44-kp-fi/drivers/net/e100/e100.h Wed Nov 13 17:15:28 2002 > > > @@ -100,7 +100,7 @@ > > > > > > #define E100_MAX_NIC 16 > > > > > > -#define E100_MAX_SCB_WAIT 100 /* Max udelays in wait_scb */ > > > +#define E100_MAX_SCB_WAIT 5000 /* Max udelays in wait_scb */ > > > > Did you mean to include this? > > > > > #define E100_MAX_CU_IDLE_WAIT 50 /* Max udelays in > > wait_cus_idle */ > > > > > > /* HWI feature related constant */ > > > diff -Nur -X /root/dontdiff 44-kp/include/asm-i386/fi.h > > > 44-kp-fi/include/asm-i386/fi.h > > > --- 44-kp/include/asm-i386/fi.h Thu Jan 1 08:00:00 1970 > > > +++ 44-kp-fi/include/asm-i386/fi.h Thu Nov 14 09:26:53 2002 > > > @@ -0,0 +1,8 @@ > > > +#ifndef _ASM_FI_H > > > +#define _ASM_FI_H > > > +#ifdef CONFIG_FI > > > > We should us _I386_FI_H or _ASMI386_FI_H since other > > architectures could have a fi.h also. > > > > > +extern int (*fi_page_fault) ( struct pt_regs *regs, > > unsigned long > > address); > > > +extern int (*fi_post_page_fault) (unsigned long condition, > > > + struct pt_regs *reg); > > > +#endif > > > +#endif /* _ASM_FI_H */ > > > diff -Nur -X /root/dontdiff 44-kp/kernel/ksyms.c > > 44-kp-fi/kernel/ksyms.c > > > --- 44-kp/kernel/ksyms.c Sat Oct 19 12:01:08 2002 > > > +++ 44-kp-fi/kernel/ksyms.c Thu Nov 14 10:25:32 2002 > > > @@ -601,3 +601,7 @@ > > > > > > /* debug */ > > > EXPORT_SYMBOL(dump_stack); > > > + > > > +#ifdef CONFIG_FI > > > +EXPORT_SYMBOL(module_list); > > > +#endif > > > > > > > > > ------------------------------------------------------- > > > This sf.net email is sponsored by: Are you worried about > > > your web server security? Click here for a FREE Thawte > > > Apache SSL Guide and answer your Apache SSL security > > > needs: http://www.gothawte.com/rd523.html > > > _______________________________________________ > > > Fault-injection-developer mailing list > > > Fau...@li... > > > > https://lists.sourceforge.net/lists/listinfo/fault-injection-developer > > > ------------------------------------------------------- > This sf.net email is sponsored by: To learn the basics of securing > your web site with SSL, click here to get a FREE TRIAL of a Thawte > Server Certificate: http://www.gothawte.com/rd524.html > _______________________________________________ > Fault-injection-developer mailing list > Fau...@li... > https://lists.sourceforge.net/lists/listinfo/fault-injection-developer > > > ------------------------------------------------------- > This sf.net email is sponsored by: To learn the basics of securing > your web site with SSL, click here to get a FREE TRIAL of a Thawte > Server Certificate: http://www.gothawte.com/rd524.html > _______________________________________________ > Fault-injection-developer mailing list > Fau...@li... > https://lists.sourceforge.net/lists/listinfo/fault-injection-developer |