RE: [PATCH] usb: gadget: Add the console support for usb-to-serial port

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Baolin Wang
> Sent: 18 November 2015 10:45
> On 18 November 2015 at 17:32, Andy Shevchenko <andy.shevchenko@xxxxxxxxx> wrote:
> > On Wed, Nov 18, 2015 at 4:15 AM, Baolin Wang <baolin.wang@xxxxxxxxxx> wrote:
> >> On 17 November 2015 at 21:34, Andy Shevchenko <andy.shevchenko@xxxxxxxxx> wrote:
> >>> On Mon, Nov 16, 2015 at 9:05 AM, Baolin Wang <baolin.wang@xxxxxxxxxx> wrote:
> >>>> It dose not work when we want to use the usb-to-serial port based
> >>>> on one usb gadget as a console. Thus this patch adds the console
> >>>> initialization to support this request.
> >>>
> >
> >>>> +#define GS_BUFFER_SIZE         (4096)
> >>> Redundant parens
> >> OK. I'll remove it.
> >>
> >>>> +#define GS_CONSOLE_BUF_SIZE    (2 * GS_BUFFER_SIZE)
> >>>> +
> >>>> +struct gscons_info {
> >>>> +       struct gs_port          *port;
> >>>> +       struct tty_driver       *tty_driver;
> >>>> +       struct work_struct      work;
> >>>> +       int                     buf_tail;
> >>>> +       char                    buf[GS_CONSOLE_BUF_SIZE];
> >>>
> >>> Can't be malloced once?
> >> The 'gscons_info' structure is malloced once.
> >
> > In state of high fragmentation is quite hard to find big memory chunks.
> > I would split it to two allocations, though if maintainers are okay
> > with your code, then I'm also okay.
> >
> 
> Make sense. But I think the major memory of the 'struct gscons_info'
> is for the 'buf' member, so I still think no need to allocate it 2
> times.

It may be worth just reducing GS_BUFFER_SIZE slightly so that the gscons_info
structure itself is less than 8k.
If you can't get 2 adjacent pages then a lot of things will fail.

	David

��.n��������+%������w��{.n�����{���)��jg��������ݢj����G�������j:+v���w�m������w�������h�����٥




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux