Randy.Dunlap wrote:

sn9c102_v4l2_ioctl() is the second largest stack user that I find (on i386, after joydump_connect()).

This patch just moves the large stack items to separate
functions so that gcc does not accumulate all of them
onto the stack at one time.

Signed-off-by: Randy Dunlap <[EMAIL PROTECTED]>

diffstat:=
drivers/usb/media/sn9c102_core.c | 493 ++++++++++++++++++++-------------------
1 files changed, 255 insertions(+), 238 deletions(-)


Sorry, I meant to document that struct sizes that I moved.

ioctl function stack usage before changes:  1812 bytes
                           after changes:    680 bytes

structs moved to their own functions:
        struct v4l2_capability cap;     // 104 bytes
        struct v4l2_format format;      // 204 bytes
        struct v4l2_jpegcompression jc; // 150 bytes
        struct v4l2_streamparm sp;      // 204 bytes

--
~Randy


------------------------------------------------------- This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting Tool for open source databases. Create drag-&-drop reports. Save time by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. Download a FREE copy at http://www.intelliview.com/go/osdn_nl _______________________________________________ [email protected] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to