Re: [RFC 7/8] fpga-region: add sysfs interface

From: Jason Gunthorpe
Date: Wed Feb 15 2017 - 15:37:52 EST

On Wed, Feb 15, 2017 at 12:07:15PM -0800, matthew.gerlach@xxxxxxxxxxxxxxx wrote:

> The format of the meta data associated with a fpga bitstream is certainly a
> subject on its own. HTTP style plain text is definately easy to understand
> and more importantly it is extendable. On the other hand, it seems
> dangerous to be doing a lot of string parsing in the kernel.

It is fairly close to binary parsing.. The process is

- Find the first occurance of \n\n, must be less than XX bytes
- Memcpy that from the sg list into a linear buffer
- Replace all \n with \0

To access a key:
- Case insensitive search for START + "Key: " or \0 + "Key: "
- Return as a string the part after the match

This isn't the sort of string parsing that typically gets you into
trouble. If we can't code the above correctly then we will screw up
safe binary parsing of strings too :)