http://bugzilla.opensuse.org/show_bug.cgi?id=944978
http://bugzilla.opensuse.org/show_bug.cgi?id=944978#c68
--- Comment #68 from Takashi Iwai
There is an error in the logic of this parameter. To handle the critical cases, the logic should enable clear interrupts, and allow the user to disable them if that works OK. The problem is that the code makes the wrong test. At this point, I'm not sure what change I should make.
Let's start from the clear definition of the flag and the parameter :) In one place: MODULE_PARM_DESC(int_clear, "Set to 1 to disable interrupt clear before set (default 0)\n"); In another place: struct rtl_mod_params { .... /* default 0: 1 means do not disable interrupts */ bool int_clear; and yet it's evaluated like: if (!rtlpci->int_clear) rtl8821ae_clear_interrupt(hw);/*clear it here first*/ IMO, what "int_clear" implies is to clear int -- so if it's 1, it should do clear interrupts. The description should be aligned with it. One thing I'm not sure is about your intention of the default int_clear behavior. Should it clear as default (for fixing this kind of bugs with risk of other breakage), or not clear (keeping 4.0 behavior as is but just provide an option to fix)? -- You are receiving this mail because: You are on the CC list for the bug.