lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Mon, 16 Mar 2015 13:18:36 -0400
From:	Mark Hounschell <markh@...pro.net>
To:	Greg KH <gregkh@...uxfoundation.org>
CC:	devel@...verdev.osuosl.org, lidza.louina@...il.com,
	driverdev-devel@...uxdriverproject.org,
	linux-kernel@...r.kernel.org, dan.carpenter@...cle.com
Subject: Re: [PATCH v2] dgnc: Don't save boards in memory that have failed
 to initialize

On 03/15/2015 08:07 AM, Mark Hounschell wrote:
> On 03/14/2015 04:44 AM, Greg KH wrote:
>> On Fri, Mar 13, 2015 at 04:55:55PM -0400, Mark Hounschell wrote:
>>> On 03/12/2015 12:14 PM, Giedrius Statkevičius wrote:
>>>> On 2015.03.12 12:08, Greg KH wrote:
>>>>> On Mon, Mar 09, 2015 at 06:29:38PM +0200, Giedrius Statkevičius wrote:
>>>>>> Remove BOARD_FAILED and don't save dgnc_boards which failed to
>>>>>> initialize.
>>>>>>
>>>>>> Assign the result of kzalloc() to brd in dgnc_found_board() and
>>>>>> only put
>>>>>> it in the dgnc_Board[] if it successfully initializes. Also, remove
>>>>>> BOARD_FAILED enum and all ifs that check for it. Finally, remove one
>>>>>> final place where state was set to BOARD_FAILED which was even
>>>>>> redundant
>>>>>> before this patch.
>>>>>>
>>>>>> Signed-off-by: Giedrius Statkevičius
>>>>>> <giedrius.statkevicius@...il.com>
>>>>>> ---
>>>>>> v2: Remove "brd = dgnc_Board[dgnc_NumBoards];" line which I forgot
>>>>>> to do
>>>>>> in the first version
>>>>>>
>>>>>>   drivers/staging/dgnc/dgnc_driver.c | 20 ++------------------
>>>>>>   drivers/staging/dgnc/dgnc_driver.h |  3 +--
>>>>>>   drivers/staging/dgnc/dgnc_mgmt.c   |  5 +----
>>>>>>   drivers/staging/dgnc/dgnc_tty.c    |  8 --------
>>>>>>   4 files changed, 4 insertions(+), 32 deletions(-)
>>>>>>
>>>>>> diff --git a/drivers/staging/dgnc/dgnc_driver.c
>>>>>> b/drivers/staging/dgnc/dgnc_driver.c
>>>>>> index fa1ee79..075727d 100644
>>>>>> --- a/drivers/staging/dgnc/dgnc_driver.c
>>>>>> +++ b/drivers/staging/dgnc/dgnc_driver.c
>>>>>> @@ -401,8 +401,7 @@ static int dgnc_found_board(struct pci_dev
>>>>>> *pdev, int id)
>>>>>>       unsigned long flags;
>>>>>>
>>>>>>       /* get the board structure and prep it */
>>>>>> -    dgnc_Board[dgnc_NumBoards] = kzalloc(sizeof(*brd), GFP_KERNEL);
>>>>>> -    brd = dgnc_Board[dgnc_NumBoards];
>>>>>> +    brd = kzalloc(sizeof(*brd), GFP_KERNEL);
>>>>>
>>>>> You've done a great job here, but...
>>>>>
>>>>> Yeah, sorry...
>>>>>
>>>>> I really want to see this whole "static list of boards/cards" go away.
>>>>> There should not be any need for that in any in-kernel driver.  Your
>>>>> patch here is a sign that things are really wrong with this whole
>>>>> static
>>>>> array mess.
>>>>>
>>>>> So could you do that instead?  I don't want to take patches around
>>>>> this
>>>>> whole "board state" mess anymore, as it should all not be needed at
>>>>> all.
>>>>>
>>>>> If you need pointers on what needs to be done here, just let me know.
>>>>>
>>>>> thanks,
>>>>>
>>>>> greg k-h
>>>>>
>>>>
>>>> I can try :) But my main concern is the lack of dgnc driver maintainers
>>>> activity and that I don't own the hardware this driver is written
>>>> for as
>>>> it's quite expensive (cheapest cards I've found start at 300$~) and I
>>>> can't afford it ATM. But I guess if I keep the patches small and
>>>> logical
>>>> everything will be okay.
>>>>
>>>
>>> I am on the maintainers list and actually have hardware. I have just
>>> been so
>>> swamped the last few months that I haven't been able to do ANYTHING
>>> here.
>>> Even work on the dgap driver that I was working on, I just haven't
>>> had the
>>> time. I can tell you that the dgnc driver does NOT work at all and
>>> hasn't
>>> worked since it was introduced into staging by Greg.
>>
>> Really?  It's always been broken?  Why don't we just delete the thing?
>>
>
> Well, broken might not be the best word. I should have just said,
> doesn't work for me.
> It did work on a 3.4 kernel when I provided it to you. I have spent no
> time as to why but will take a look on Monday.
>

The driver actually does work. It didn't work for me because the device 
entries were not as they used to be. So if you want to make a change you 
think needs testing, I can test it.
I only have a single card 8 port though.

Regards
Mark

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ