Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 13 May 1996 18:48:54 +0200
From:      Wolfram Schneider <wosch@campa.panke.de>
To:        Paul Traina <pst@freefall.freebsd.org>
Cc:        freebsd-bugs@freefall.freebsd.org
Subject:   active bugs
Message-ID:  <199605131648.SAA01588@campa.panke.de>
In-Reply-To: <199605121130.EAA15843@freefall.freebsd.org>
References:  <199605121130.EAA15843@freefall.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Paul Traina writes:
>Current FreeBSD problem reports
[nice list deleted]

I prefer sorted by Tracker and S(tatus) instead by date.

E.g.:

S  Submitted   Tracker    Engr.    Description
-------------------------------------------------------------------------------
f [1995/11/11] bin/817    fenner   Wrong route to remote network
o [1996/02/23] bin/1040   wollman  with certain flags, route can reboot your
a [1995/01/11] i386/105   bde      Distributed libm (msun) has non-standard 
a [1996/01/22] kern/965   bde      2.0.5: system crashes daily because of "m
a [1996/03/04] kern/1059  hsu      null fs panics system
f [1995/05/28] kern/452   davidg   vnode swapping panics
f [1995/11/27] kern/840   peter    Kernel page directory invalid
o [1995/12/03] kern/863   davidg   panic on kernel page fault, NULL curproc
o [1995/12/08] kern/876   mpp      NFS allows bogus accesses to cached data
o [1996/01/29] kern/978   se       Three deadlocks in row
o [1996/04/06] kern/1121  dyson    System crashes on boot up just after the 
o [1996/04/27] kern/1159  dyson    NFS Client hangs in vm_object_terminate()
o [1996/01/09] kern/940            panic:  free vnode isn't
o [1996/02/08] kern/1008           Daily crash while writing network backups
o [1996/04/29] kern/1163           2.2-960323-SNAP: fatal trap 12
o [1996/05/07] kern/1177           Machine hangs with message "vm_fork: no p
o [1996/01/13] ports/944  pst      Security fixes for Fvwm 1.24r
[...]

Here is the perl script. It works for the 'List of open Problem
Reports' too.

#!/usr/bin/perl
# (c) Wolfram Schneider, Berlin. May 1996.
#
# bugreports - sort bugreports
#
# $Id: bugreports.pl,v 1.3 1996/05/13 16:32:29 wosch Exp $


# S  Submitted   Tracker    Engr.    Description
# -----------------------------------------------------------------------
# a [1995/01/11] i386/105   bde      Distributed libm (msun) has non-standard 
#
# Sort Order:
# 1. Tracker, without number: i386 before kern
# 2. S: a before o
# 3. Engr: non-empty entries on bottom
# 4. Tracker ID
#
sub active_bugs {
    $S = 0;
    $Submitted = 1;
    $Tracker = 2;
    $Engr = 3;
    $Description = 4;
    
    @alist = split($", $a);
    @blist = split($", $b);

    ($atrackertype, $anumber) = split('/', $alist[$Tracker]);
    ($btrackertype, $bnumber) = split('/', $blist[$Tracker]);


    # fix empty Engr
    if (substr($a, 26, 1) eq ' ') {
	$alist[$Engr] = ' ';
    }
    if (substr($b, 26, 1) eq ' ') {
	$blist[$Engr] = ' ';
    }

    # Tracker not equal
    if ($res = $atrackertype cmp $btrackertype) {
	# warn "$res $atrackertype $btrackertype\n";
	return $res;
    }

    # S not equal
    if ($res = $alist[$S] cmp $blist[$S]) {
	return $res;
    }

    # Empty Engr.
    if ($alist[$Engr] eq ' ') {
	return ($anumber <=> $bnumber) if $blist[$Engr] eq ' ';
	return +1;		# ' ' is greater, at bottom
    } elsif ($blist[$Engr] eq ' ') {
	return -1;		# ' ' is greater, at bottom
    }
    
    # Sort by Tracker ID
    $anumber <=> $bnumber;
}

# List of open Problem Reports
# [1994/11/30] kern/34       nullfs and union mounts can result in wild 
# Sort Order:
# 1. Tracker, without number: i386 before kern
# 2. Tracker ID

sub List_of_open_Problem_Reports {
    $Submitted = 0;
    $Tracker = 1;
    
    @alist = split($", $a);
    @blist = split($", $b);

    ($atrackertype, $anumber) = split('/', $alist[$Tracker]);
    ($btrackertype, $bnumber) = split('/', $blist[$Tracker]);

    # Tracker not equal
    if ($res = $atrackertype cmp $btrackertype) {
	# warn "$res $atrackertype $btrackertype\n";
	return $res;
    }

    # Sort by Tracker ID
    $anumber <=> $bnumber;
}

sub parse {
    local($flag) = 0;		# List_of_open_Problem_Reports or active_bugs
    local(@list);

    while(<>) {
    
	# bug line
	if (/^([a-z]\s)?\[[^\]]+\]\s/) {
	    push(@list, $_);

	    if (!$flag) {
		if (/^[a-z]/) { 
		    $flag = 'active_bugs'; 
		} else { 
		    $flag = 'List_of_open_Problem_Reports'; 
		}
	    }
	}

	# something else
	else {
	    # sort bugs and print 
	    if ($#list >= 0) {
		print sort $flag @list;
		undef @list;
		$flag = 0;
	    }

	    # print rest
	    print;
	}
    }
}

### Main
&parse;




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199605131648.SAA01588>