home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #31 / NN_1992_31.iso / spool / alt / hackers / 1852 < prev    next >
Encoding:
Text File  |  1992-12-27  |  2.3 KB  |  64 lines

  1. Newsgroups: alt.hackers
  2. Path: sparky!uunet!usc!rpi!batcomputer!bouncer
  3. From: eirik@elf.TN.Cornell.EDU (Eirik Fuller)
  4. Subject: stripslash
  5. Message-ID: <1992Dec28.012047.29726@tc.cornell.edu>
  6. Sender: news@tc.cornell.edu
  7. Nntp-Posting-Host: earache.tc.cornell.edu
  8. Organization: Cornell Theory Center
  9. Date: Mon, 28 Dec 1992 01:20:47 GMT
  10. Approved: The Slash Stripper
  11. Lines: 51
  12.  
  13. I first installed SunOS 4.1.3 during a CPU upgrade; the newer CPU,
  14. unlike the older one, is not constrained, by obsolescence, to SunOS
  15. 4.1.1, though I think it is constrained by a slightly different sort
  16. of obsolescence to 4.1.3, or at best any subsequent 4.1.? releases.
  17. Not that I'd ever want to run Solaris 2 ...
  18.  
  19. One goal in installing 4.1.3 was to shrink the number of applicable
  20. patches.  Perhaps this goal is misguided; after all, a smaller number
  21. of patches for an equal number of bugs might not be the best thing to
  22. have.  However, I was driven in part by a naive hope that the number
  23. of stale old bugs which had been fixed was larger than the number of
  24. new bugs.
  25.  
  26. As it happens, I did find one especially annoying new "feature" of
  27. SunOS 4.1.3, one which, among other things, invalidated a GNU emacs
  28. primitive (file-name-as-directory).  I was on the verge of deciding to
  29. retrograde to 4.1.2 (and upgrade our 4.1.1 machines only to 4.1.2),
  30. when a stubborn streak set in.  After some poking around, I came up
  31. with this:
  32.  
  33.  
  34. 19:34:53 $ adb -w vfs_lookup.o 
  35. stripslash?3i
  36. _stripslash:
  37. _stripslash:    ld    [%o0 + 0x8], %o2
  38.         cmp    %o2, 0x1
  39.         blu    _stripslash + 0x64
  40. stripslash+0x64?i
  41. _stripslash+0x64:        jmp    %o7 + 0x8
  42. stripslash+0x64?X
  43. _stripslash+0x64:        81c3e008
  44. stripslash?W 0x81c3e008
  45. _stripslash:    0xd4022008    =    0x81c3e008
  46. ?i
  47. _stripslash:
  48. _stripslash:    jmp    %o7 + 0x8
  49. 19:36:13 $ 
  50.  
  51.  
  52. Note that the symbol stripslash does not exist in 4.1.1 or 4.1.2
  53. kernels, only (from what I've seen) in 4.1.3 kernels.  What this
  54. means, I think, is that any kernel code that calls it should now work
  55. the same way as the earlier kernel code that didn't call it, except
  56. for the small overhead of calling the newly defined noop.
  57.  
  58. I can't for the life of me imagine what "problem" this stripslash
  59. function is supposed to "fix" ... it seems more likely that a Sun
  60. employee by the name of Murphy knew it would annoy me.  :-)
  61.  
  62. Left as an exercise: chase down the callers of this function and patch
  63. them not to call it.  :-)
  64.