Friday 21 January 2011

dtrace updates

I posted a new release of dtrace last night, and theres some silly
issues to resolve in that release. Its fine on Ubuntu 10.04 and 10.10
and probably lots of earlier releases, but thought it worth highlighting
some of the blips I found on an RedHat AS4 build:


  1. If yacc is used, especially older yaccs, a bison construct can lead to a
    compile time error. Bison allows "string" tokens, so that on an error
    message it doesnt print something ugly, like "Syntax error near DT_OPEN_BRACE".
    Unfortunately, old yacc either doesnt reject this or happily accepts a
    token like "sizeof" which then causes a #define of sizeof - the keyword,
    and causes strange and difficult to diagnose compiler diagnostics.
    I will need to put in a yacc/bison detect to handle this.

  2. INET_ADDRSTRLEN are not being handled properly for older kernels,
    when the #define is in a file we are not including.

  3. The changes for the lockless ioctl() result in backward compile
    time problems since neither unlock_ioctl() or compat_ioctl() are available
    and the code doesnt default to the old style ioctl(). (The major
    difference here is that the old ioctl() callback would have
    a 'struct node' and 'struct file' argument, whereas both unlocked_ioctl
    and compat_ioctl only pass in a struct file. Some #ifdef's should handle
    this.

  4. Another one or two minor issues.



Keep an eye out on the download page for a new release this weekend.

Post created by CRiSP v10.0.3a-b5928


No comments:

Post a Comment