Re: copy_from_user/copy_to_user question

Vinay Venkataraghavan
2005-12-06T20:06:06Z

Well, sorry for all the questions. I really appreciate
everybody's help and especially Steve for standing up
for me!! All the reasons you cited are true and that
is why I am afraid I cannot post the actual code etc.

There was never a question in my mind that we have to
use the *_user functions. I was just trying to
understand all the corner cases and the semantics of
how things worked when it has not been used.

Thanks once again.
Signing off this thread.
Vinay

--- "linux-os (Dick Johnson)" <linux-os@analogic.com>
wrote:

>
> On Tue, 6 Dec 2005, Vinay Venkataraghavan wrote:
>
> >
> > Thanks to Steve and everybody who sent such
> detailed
> > and timely responses to my question.
> >
> > The motivation for the copy to user question is
> due to
> > the handling of ioctl calls in the driver for a
> chip
> > that is widely used. I just could not beleive that
> > they would/could commit such a mistake.
> >
> > It looks like the old driver code still seems to
> work
> > even without performing copy_to_user and
> > copy_from_user.
> >
> > But this brings about another scenario. What if
> the
> > case statement in the ioctl call only needs to
> have
> > access to the members of the structure passed in
> > through the arg pointer but does not need to
> modify
> > these values and return values.
> >
> > Is this still a problem if copy_to_user and
> > copy_from_user is not used?
> >
> > Thanks,
> > Vinay
>
> If you __access__(note) user-mode data from the
> kernel, you __must__
> use the appropriate /copy/to/from/get/put/user
> functions and/or
> macros. And, you __must__ not be in a spin-lock, or
> otherwise have
> the interrupts disabled, while doing it. There are
> no exceptions.
>
> (note)__assess__ means even "peek at".
>
> FYI, there should never even be such a question.
>
> Cheers,
> Dick Johnson
> Penguin : Linux version 2.6.13.4 on an i686 machine
> (5589.55 BogoMips).
> Warning : 98.36% of all statistics are fiction.
> .
>
>
****************************************************************
> The information transmitted in this message is
> confidential and may be privileged. Any review,
> retransmission, dissemination, or other use of this
> information by persons or entities other than the
> intended recipient is prohibited. If you are not
> the intended recipient, please notify Analogic
> Corporation immediately - by replying to this
> message or by sending an email to
> DeliveryErrors@analogic.com - and destroy all copies
> of this information, including any attachments,
> without reading or disclosing them.
>
> Thank you.
>

__________________________________________
Yahoo! DSL – Something to write home about.
Just $16.99/mo. or less.
dsl.yahoo.com