lkml.org 
[lkml]   [2004]   [Nov]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: Oops in 2.6.10-rc1 (almost solved)
    On Sun, Nov 14, 2004 at 09:02:33PM +0100, Christian Kujau wrote:
    > > Not ready for Linus yet, and you'll need to re-apply the previous
    > > edd.S patch which is now reverted in Linus's tree. As your BIOS
    >
    > i've applied the patch to a pristine 2.6.10-rc1, so the (currently
    > reverted) EDD change is still there. tell me, if the patch had to be
    > applied to sth. else.
    >
    > but for now i have to say, that it still oopses:
    >
    > http://www.nerdbynature.de/bits/prinz/2.6.10-rc1/dmesg-2.6.10-rc1_edd-2.txt

    OK, the patch below (which Linus applied to his tree yesterday) should
    fix the oopses.

    > BIOS EDD facility v0.16 2004-Jun-25, 16 devices found

    but the patch to edd.S doesn't resolve that EDD believes you've got 16
    devices (I would expect it to report 2, as you have only 2 disks).

    Thanks for the quick testing. Back to the drawing board though for
    this second part.

    Thanks,
    Matt

    --
    Matt Domsch
    Sr. Software Engineer, Lead Engineer
    Dell Linux Solutions linux.dell.com & www.dell.com/linux
    Linux on Dell mailing lists @ http://lists.us.dell.com

    ===== drivers/firmware/edd.c 1.30 vs edited =====
    --- 1.30/drivers/firmware/edd.c 2004-06-29 09:44:48 -05:00
    +++ edited/drivers/firmware/edd.c 2004-11-13 07:56:00 -06:00
    @@ -70,7 +70,7 @@
    static int edd_dev_is_type(struct edd_device *edev, const char *type);
    static struct pci_dev *edd_get_pci_dev(struct edd_device *edev);

    -static struct edd_device *edd_devices[EDDMAXNR];
    +static struct edd_device *edd_devices[EDD_MBR_SIG_MAX];

    #define EDD_DEVICE_ATTR(_name,_mode,_show,_test) \
    struct edd_attribute edd_attr_##_name = { \
    @@ -728,9 +728,9 @@

    static inline int edd_num_devices(void)
    {
    - return min_t(unsigned char,
    - max_t(unsigned char, edd.edd_info_nr, edd.mbr_signature_nr),
    - max_t(unsigned char, EDD_MBR_SIG_MAX, EDDMAXNR));
    + return max_t(unsigned char,
    + min_t(unsigned char, EDD_MBR_SIG_MAX, edd.mbr_signature_nr),
    + min_t(unsigned char, EDDMAXNR, edd.edd_info_nr));
    }

    /**
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/
    \
     
     \ /
      Last update: 2005-03-22 14:08    [W:0.024 / U:89.024 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site